Video films are an effective means for describing information about a variety of subject realms and a variety of objects within those subject realms. Current digital transmitting systems have a number of advantages for video processing in comparison with analog systems. Recently developed techniques have led to improved methods to reduce video or image size. Such methods are extremely useful for digital data storing and processing or manipulating. So it may be said that data size reduction is a compression process. The main objective of a compression process is to achieve the highest compression ratio and in the same time to provide the minimum data loss that may lead to decompressed image quality degradation.
Generally, to encode an image sequence, information concerning the motion of objects in a scene from one frame to the next play an important role. Because of the high redundancy that exists between consecutive frames within most image sequences, substantial data compression can be achieved using motion estimation/compensation so that the encoder will only have to encode the differences relative to areas that are shifted with respect to the areas coded. Motion estimation is a process of determining the direction and motion vectors for an area in the current frame relative to one or more reference frames. Motion compensation is a process of using the motion vectors to generate a prediction of the current frame. The difference between the current frame and the predicted frame results in a residual signal, which contains substantially less information than the current frame. Thus a significant saving in coding bits is realized by encoding and transmitting only the residual signal and corresponding motion vectors.
Encoders must address the dichotomy of attempting to increase the precision of the motion estimation process to minimize the residual signal or accepting a lower level of precision in the motion estimation process to minimize the computation overhead. Determining the motion vectors from the frame sequence requires intensive searching between frames to determine the motion information. A more intensive search will generate a more precise set of motion vectors at the expense of more computational cycles.
Some systems determine motion information using a block based approach. In a simple block based approach the current frame is divided into a number of blocks of pixels (current blocks). For each of these current blocks, a search is performed within a selected area in the preceding frame for a block of pixels that best matches the current block (determine the block displacement).
There is a problem inherent in selecting what size of block to use for motion estimation. If the block size is too large, there may bee to much information in the block, thus requiring a relatively large amount of information to adequately describe the motion in the block. If the block size is too small it may be impossible to estimate the block displacement. This problem is called the aperture problem.
Therefore, there is a need for a method for solving the aperture problem by determining the best size and number of blocks to use for motion estimation in a frame.